c09d46ce31b94d7046f5eccf07154ad7c220dc49,app/src/main/java/com/github/pockethub/ui/NewsFragment.java,NewsFragment,onListItemLongClick,#ListView#View#number#number#,144
Before Change
final User user = event.actor;
if (repo != null && user != null) {
final AlertDialog dialog = LightAlertDialog.create(getActivity());
dialog.setTitle(R.string.navigate_to);
dialog.setCanceledOnTouchOutside(true);
View view = getActivity().getLayoutInflater().inflate(
R.layout.nav_dialog, null);
ViewFinder finder = new ViewFinder(view);
avatars.bind(finder.imageView(R.id.iv_user_avatar), user);
avatars.bind(finder.imageView(R.id.iv_repo_avatar), repo.owner);
finder.setText(R.id.tv_login, user.login);
finder.setText(R.id.tv_repo_name, InfoUtils.createRepoId(repo));
finder.onClick(R.id.ll_user_area, new OnClickListener() {
public void onClick(View v) {
dialog.dismiss();
viewUser(user);
}
});
finder.onClick(R.id.ll_repo_area, new OnClickListener() {
public void onClick(View v) {
dialog.dismiss();
viewRepository(repo);
}
});
dialog.setView(view);
dialog.show();
return true;
After Change
final User user = event.actor;
if (repo != null && user != null) {
final MaterialDialog.Builder builder = new MaterialDialog.Builder(getActivity())
.title(R.string.navigate_to);
// Hacky but necessary since material dialogs has a different API
final MaterialDialog[] dialogHolder = new MaterialDialog[1];
View view = getActivity().getLayoutInflater().inflate(
R.layout.nav_dialog, null);
ViewFinder finder = new ViewFinder(view);
avatars.bind(finder.imageView(R.id.iv_user_avatar), user);
avatars.bind(finder.imageView(R.id.iv_repo_avatar), repo.owner);
finder.setText(R.id.tv_login, user.login);
finder.setText(R.id.tv_repo_name, InfoUtils.createRepoId(repo));
finder.onClick(R.id.ll_user_area, new OnClickListener() {
public void onClick(View v) {
dialogHolder[0].dismiss();
viewUser(user);
}
});
finder.onClick(R.id.ll_repo_area, new OnClickListener() {
public void onClick(View v) {
dialogHolder[0].dismiss();
viewRepository(repo);
}
});
builder.customView(view, false);
MaterialDialog dialog = builder.build();
dialogHolder[0] = dialog;
dialog.setCanceledOnTouchOutside(true);
dialog.show();
return true;